package Student_Evaluate;

import java.sql.SQLException;
import java.util.List;
import java.util.Scanner;

/**
 * 学生评教系统主菜单登陆界面
 * 输入1登录，输入0退出
 * 登录界面需输入用户名
 * 输入密码
 * 输入正确后进入评教界面
 * 界面功能1添加评教信息
 * 界面功能2删除评教信息
 * 界面功能3修改评教信息
 * 界面功能4查询评教信息
 * 界面退出
 */
public class Menu {
    public static void main(String[] args) throws SQLException, ClassNotFoundException {
        Scanner sc = new Scanner(System.in);
        while (true) {
            // 实例化
            // TestMain4 tt = new TestMain4();
            // 调用方法
            //  tt.Time();

            Time.main(null);
            System.out.println("---------------------------------");
            System.out.println("---------------------------------");
            System.out.println("---------学生评教系统模块-------------");
            System.out.println("------------1.登录----------------");
            System.out.println("------------0.退出----------------");
            System.out.println("---------------------------------");
            System.out.println("---------------------------------");
            String str = sc.nextLine();
            //学生评教系统登陆界面
            if ("1".equals(str)) { // "1" == str不允许
                while (true) {
                    System.out.println("--------请输入用户名----------");
                    String username = sc.nextLine();
                    //输入用户名
                    System.out.println("--------请输入密码-----------");
                    String password = sc.nextLine();
//输入密码
                    LoginDao dao = new LoginDao();
                    //更新LoginDao
                    List<UserPojo> ulist = dao.findByUname(username);
                    //实例调用

                    if (ulist.size() == 1) {
                        /**
                         * 登陆成功后进入评教信息界面
                         * 界面功能1添加评教信息
                         * 界面功能2删除评教信息
                         * 界面功能3修改评教信息
                         * 界面功能4查询评教信息
                         * 界面退出
                         */
                        if (ulist.get(0).getPassword().equals(password)) {
                            System.out.println("登录成功");
                            //登录界面成功显示
                            while (true) {
                                System.out.println("-------1.添加评教信息------");
                                //输入1进入添加评教信息
                                System.out.println("-------2.删除评教信息------");
                                //输入2进入删除评教信息
                    /*System.out.println("-------3.导入学生信息------");
                    System.out.println("-------4.导出学生信息------");*/
                                System.out.println("-------3.修改评教信息------");
                                //输入3进入修改评教信息
                                System.out.println("-------4.查询评教信息------");
                                //输入4进入查询评教信息
                                System.out.println("-------5.退出------");
                                //输入5退出
                                System.out.println("-------------");
                                System.out.println("-------------");
                                String str1 = sc.nextLine();
                                //输入1后进入添加评教信息模块
                                if ("1".equals(str1)) {
                                    //判断输入的功能界面
                                    System.out.println("-----添加评教信息：学号--------");
                                    String v1 = sc.nextLine();
                                    //添加评教信息输入学号
                                    System.out.println("-----添加评教信息：教师号--------");
                                    String v2 = sc.nextLine();
                                    //添加评教信息输入教师号
                                    System.out.println("-----添加评教信息：等级--------");
                                    String v3 = sc.nextLine();
                                    //添加评教信息输入等级
                        /*System.out.println("-----添加学生信息：性别--------");
                        String v4 = sc.nextLine();
                        System.out.println("-----添加学生信息：入学成绩--------");
                        int v5 = Integer.parseInt(sc.nextLine());
                        System.out.println("-----添加学生信息：专业--------");
                        String v6 = sc.nextLine();
                        System.out.println("-----添加学生信息：班号----------");
                        int v7 = Integer.parseInt(sc.nextLine());
                        // int 变更了几条记录*/
                                    int r = dao.addUserInfo(v1, v2, v3);
                                    //定义r为dao.addUserInfo
                                    System.out.println("添加成了" + r + "条数据");
                                    //添加成功显示界面
                                }
                                //
                                else if ("2".equals(str1)) {
                                    deleteStudent_Evaluate();
                                }
                                //输入2进入删除Student_Evaluate
                                else if ("3".equals(str1)) {
                                    UpdateStudent_Evaluate();
                                    //输入3进入修改Student_Evaluate
                                }
                                else if ("4".equals(str1)) {
                                    //输入4进入查询new LoginDao
                                    //                                   SelectStudent();
                                    System.out.println("--------请输入查询教师号----------");
                                    String tno = sc.nextLine();

                                    LoginDao dao1 = new LoginDao();
                                    //更新new LoginDao
                                    List<Student_EvaluatePojo> slist = dao1.selectByTno(tno);
                                    //实例调用

                                }
                                else if ("5".equals(str1)) {
                                    //输入5，返回上一级
                                    return;
                                    //返回
                                }
                            }
                        }else{
                            System.out.println("用户名存在，密码不正确");
                            //判断密码是否正确，若密码错误，则显示
                        }
                    } else {
                        System.out.println("有问题了呀！用户名不存在");
                        //判断若用户名错误，显示条件
                    }
                }
                        } else if ("0".equals(str)) {
                //若没有输入
                            System.exit(0);
                            //输入的字符为0
                        } else {
                            System.out.println("请重新输入");
                            //登录界面显示"请重新输入"

                             }
                         }
                    }

    private static void UpdateStudent_Evaluate() throws SQLException {
        while(true){
            /**
             * 进入修改评教信息
             * 输入教师号
             * 输入要修改的等级
             * 若输入的教师号不对则显示"教师号不存在"
             * 若修改成功显示"修改等级成功"+"条"
             */
            System.out.println("--------请输入教师号--------------");
            // 监控控制台
            System.out.println("--------0.退出--------------");

            // 监控控制台
            Scanner sc = new Scanner(System.in);
            //          int sgrade = Integer.parseInt(sc.nextLine());
            String tno = sc.nextLine();
            if ("0".equals(tno)) {
                return;
                // 结束
            } else {
                // 数据的操作
                Student_EvaluateDao dao = new Student_EvaluateDao();
                System.out.println("--------输入要修改的等级-----------");
                //修改时输入要修改的等级
                //int level = Integer.parseInt(sc.nextLine());
                String level = sc.nextLine();
                int r = dao.updateBySno(tno, level);
                //判断教师号是否存在
                if (r == 0) {
                    System.out.println("教师号不存在");
                    // 若教师号不存在
                } else {
                    System.out.println("修改等级成功" + r + "条");
                    // 若修改成功
                }
            }
        }
    }

    private static void deleteStudent_Evaluate() throws SQLException {
        while (true) {
            /**
             * 进入删除教师信息
             * 输入要删除的教师号
             * 若教师号不存在则显示"教师号不存在"
             * 若删除成功则显示"删除成功" + "条"
             */
            System.out.println("--------请输入教师号--------------");
            // 监控控制台
            System.out.println("--------0.退出--------------");

            // 监控控制台
            Scanner sc = new Scanner(System.in);
            //更新
            String tno = sc.nextLine();
            if ("0".equals(tno)) {
                return; // 结束
            } else {
                // 数据的操作
                Student_EvaluateDao dao = new Student_EvaluateDao();
                int r = dao.deleteByTno(tno);
                //定义r
                if (r == 0) {
                    System.out.println("教师号不存在");
                    //若输入的教师号不存在则显示
                } else {
                    System.out.println("删除成功" + r + "条");
                    //删除成功显示
                }
            }
        }
    }
}